The characteristics and behavior of an online enterprise application and an offline enterprise application are different. Hence, the online enterprise application cannot be used as the offline enterprise application or vice versa as their characteristics and behaviors are different. This brings the need to develop the online enterprise application and the offline enterprise application separately. The drawback of developing the offline enterprise application and the online enterprise application separately is the cost of development and maintenance increases by almost twice or more since two enterprise applications, that is, the online enterprise application and the offline enterprise application have to be developed to provide the same business functionality. Also, the effort to develop separate applications is duplicated as the same enterprise application is developed for two connection modes, that is, online mode and offline mode.